/*!
 * \file xml_header.h
 *
 * \brief 消息头操作
 *
 * All Rights Reserved Copyright (C) 2014 broada,Co.,Ltd.
 *
 * \version 1.0
 * \author songbb
 * \date 2016/08/08
 *
 */

#ifndef __XML_HEADER_H_
#define __XML_HEADER_H_

#include "xml_core.h"

/*!
 * 根据通用包头判断协议
 *
 * \param p_st_conn         (ct信息)
 * \param p_analyze_in      (协议分析入力数据)
 *
 * \return 0  失败\n
 *         1  成功
 *
 */
int xml_header_detect(Conntrack *p_st_conn
                        , Apm_packet *p_analyze_in);

/*!
 * 解析通用包头
 *
 * \param p_payload             (数据内容)
 * \param ui_payload_len        (数据长度)
 * \param p_st_xml_header       (通用头结构体)
 *
 * \return 0  失败\n
 *         1  成功
 *
 */
int xml_header_unpack(char *p_payload
                        , unsigned int ui_payload_len
                        , L7session_xml *p_st_sess
                        , xml_header *p_st_xml_header);

#endif
